#pragma once

#include "Hazard.h"
#include <vector>

class FloorSpikes : public Hazard
{

public:
	FloorSpikes(void);
	~FloorSpikes(void);

	// Draw
	virtual void Render(void);

	// Update
	virtual void Update(float elapsedTime);

	// Collision response
	virtual bool CheckCollision(IEntity* base);

	// See if the spikes are up
	inline bool IsUp(void) { return SpikesUp; }

private:

	// Are the spikes up or down
	bool SpikesUp;

	// Did the spikes just raise?
	bool JustRaised; // Deals bonus damage if they were on the spikes when it raised

	// Cooldown to switch states
	float CooldownTimer;

	// List of things getting hurt
	std::vector<Entity*> Collisions;

};

